锘縄nsightInitScript = { _settings: null, _client: null, _createClient: function (t) { InsightInitScript._client = new sfDataIntell.Client({ apiKey: InsightInitScript._settings.apiKey, source: InsightInitScript._settings.applicationName, apiServerUrl: InsightInitScript._settings.apiServerUrl, trackingCookieDomain: InsightInitScript._settings.trackingCookieDomain, maxAgeForTrackingCookieInDays: InsightInitScript._settings.maxAgeForTrackingCookieInDays, slidingExpirationForTrackingCookie: InsightInitScript._settings.slidingExpirationForTrackingCookie, trackYouTubeVideos: InsightInitScript._settings.trackYouTubeVideos, trackVimeoVideos: InsightInitScript._settings.trackVimeoVideos, crossDomainTrackingEntries: InsightInitScript._settings.crossDomainTrackingEntries, sessionLengthInMinutes: InsightInitScript._settings.sessionLengthInMinutes, trackPageVisits: !0, trackVideos: !0, instrument: !0, trackBrowserInformation: !0, trackDocuments: !0, docshrefTestExpressions: InsightInitScript._settings.docshrefTestExpressions, enableTracking: t, writeSubjectMetadata: InsightInitScript._settings.writeSubjectMetadata, writeSessionMetadata: InsightInitScript._settings.writeSessionMetadata, xDomainSessionId: InsightInitScript._settings.xDomainSessionId, xDomainPrevSessionId: InsightInitScript._settings.xDomainPrevSessionId, pageVisitId: InsightInitScript._settings.pageVisitId }); var i = InsightInitScript._settings.keepDecTrackingCookieOnTrackingConsentRejection || !1; !1 === t && !1 === i && (InsightInitScript._client.deleteCookie(InsightInitScript._settings.trackingCookieDomain), InsightInitScript._client.deleteSessionCookie(InsightInitScript._settings.trackingCookieDomain)), window.DataIntelligenceSubmitScript = InsightInitScript, InsightInitScript._dispatchEvent("decclientready") }, _dispatchEvent: function (t) { if ("function" == typeof window.CustomEvent) window.dispatchEvent(new window.CustomEvent(t)); else { var i = function (t, i) { i = i || { bubbles: !1, cancelable: !1, detail: void 0 }; var n = document.createEvent("CustomEvent"); return n.initCustomEvent(t, i.bubbles, i.cancelable, i.detail), n }; i.prototype = window.Event.prototype, window.CustomEvent = i; var n = new i(t, { bubbles: !0, cancelable: !0 }); window.dispatchEvent(n) } }, _readCookieByName: function (t) { for (var i = t + "=", n = window.document.cookie.split(";"), e = 0; e < n.length; e++) { var s = n[e].trim(); if (0 === s.indexOf(i)) return s.substring(i.length, s.length) } return null }, _setCookie: function (t, i, n, e) { var s = new Date; s.setTime(s.getTime() + 60 * n * 1e3); var r = t + "=" + i + ";path=/; " + ("expires=" + s.toGMTString()); e && (r += ";domain=" + e), r += ";SameSite=Lax", document.cookie = r }, _createIdentifier: function (t = !0) { var i = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function (t) { var i = 16 * Math.random() | 0; return ("x" == t ? i : 3 & i | 8).toString(16) })); return t ? (new Date).getTime() + "-" + i : i }, _waitForCookie(t, i) { if (document.cookie.includes(t)) i(); else { const n = setInterval((function () { document.cookie.includes(t) && (clearInterval(n), i()) }), 25) } }, _getQueryParams: function () { try { var t = window.location; if (!t) return null; var i = t.search; if (!i) return null; var n = i.slice(i.indexOf("?") + 1).split("&"), e = {}; return n.forEach((function (t) { var i = t.split("="); e[i[0]] = decodeURIComponent(i[1]) })), e } catch (t) { return null } }, _parseXDomainParams: function () { var t = InsightInitScript._getQueryParams(); if (!t) return null; var i = t.instrck; if (!i) return null; var n = atob(i); return JSON.parse(n) }, parseSettings: function () { var t = document.querySelector("#sf-insight-settings"); if (t) { var i = t.textContent.trim(); InsightInitScript._settings = JSON.parse(i) } }, manageCookies: function () { var t = "sf-data-intell-subject", i = "sf-ins-ssid", n = "sf-ins-pv-id", e = 24 * InsightInitScript._settings.maxAgeForTrackingCookieInDays * 60, s = InsightInitScript._settings.crossDomainTrackingEntries, r = InsightInitScript._readCookieByName(t); r && InsightInitScript._settings.slidingExpirationForTrackingCookie && InsightInitScript._setCookie(t, r, e, InsightInitScript._settings.trackingCookieDomain); var a = !!window.TrackingConsentManager && !1 === window.TrackingConsentManager.canTrackCurrentUser(), o = []; r || a || (r = InsightInitScript._createIdentifier(), InsightInitScript._setCookie(t, r, e, InsightInitScript._settings.trackingCookieDomain), localStorage.removeItem("sf-tr-ids-storage"), o.push(new Promise((function (i, n) { InsightInitScript._waitForCookie(t, i) }))), InsightInitScript._settings.writeSubjectMetadata = !0); var c = null; if (s && Array.isArray(s) && s.length > 0) { var g = InsightInitScript._parseXDomainParams(); g && (c = g.si, InsightInitScript._settings.xDomainSessionId = c) } var I = InsightInitScript._readCookieByName(i); if (c && (I && I !== c && (InsightInitScript._settings.writeSessionMetadata = !0, InsightInitScript._settings.xDomainPrevSessionId = I), I = c), I && InsightInitScript._setCookie(i, I, InsightInitScript._settings.sessionLengthInMinutes, InsightInitScript._settings.trackingCookieDomain), I || a || (I = InsightInitScript._createIdentifier(), InsightInitScript._setCookie(i, I, InsightInitScript._settings.sessionLengthInMinutes, InsightInitScript._settings.trackingCookieDomain), localStorage.removeItem("sf-ss-ids-storage"), o.push(new Promise((function (t, n) { InsightInitScript._waitForCookie(i, t) }))), InsightInitScript._settings.writeSessionMetadata = !0), !a) { var d = InsightInitScript._createIdentifier(!1); document.cookie = n + "=" + d + "; expires=0; path=/; SameSite=Lax", o.push(new Promise((function (t, i) { InsightInitScript._waitForCookie(n, t) }))), InsightInitScript._settings.pageVisitId = d } Promise.all(o).then((function () { InsightInitScript.cookiesManaged = !0, InsightInitScript._dispatchEvent("insCookiesMngmntDone") })) }, parseMetadata: function () { var t = document.querySelector("#sf-insight-metadata"); if (t) { var i = t.textContent.trim(), n = JSON.parse(i); window.decMetadata = window.decMetadata || {}, window.decMetadata.contentMetadata = JSON.parse(n.contentMetadata), window.decMetadata.videosMetadata = JSON.parse(n.videosMetadata), window.sfCorrelationId && (window.decMetadata.contentMetadata.CorrelationId = window.sfCorrelationId) } }, initialize: function () { window.TrackingConsentManager ? (TrackingConsentManager.removeEventListener("ConsentChanged", InsightInitScript._createClient), TrackingConsentManager.addEventListener("ConsentChanged", InsightInitScript._createClient), InsightInitScript._createClient(TrackingConsentManager.canTrackCurrentUser())) : InsightInitScript._createClient(!0) } }, InsightInitScript.parseSettings(), InsightInitScript.manageCookies(), InsightInitScript.parseMetadata(), document.addEventListener("insight-sdk-ready", InsightInitScript.initialize);